package Java测试.编码3;

import java.io.InputStream;
import java.io.OutputStream;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Scanner;

/*
3.模拟qq聊天功能：实现客户端与服务器（一对一）的聊天功能，客户端首先发起聊天，输入的内容在服务器端和客户端显示，
然后服务器端也可以输入信息，同样信息在客户端和服务端显示。
提示:
	客户端
1)客户端编写聊天的方法chat()
2)要求使用BufferedReader与BufferedWriter缓冲类
3)编写用于测试的主方法调用chat()方法
服务器端
1)编写提供服务的方法service()
2)编写用于测试的主方法调用service()方法
如果有一方说bye则对话结束
 */
public class Service {
    public static void main(String[] args) throws Exception{
        Scanner scanner = new Scanner(System.in);
        ServerSocket serverSocket = new ServerSocket(8888);
        Socket accept = serverSocket.accept();
        while (true){
            //接收数据
            InputStream is = accept.getInputStream();
            byte[] bytes = new byte[1024];
            int read = is.read(bytes);
            String s = new String(bytes, 0, read);
            System.out.println("接收的数据为"+s);
            if (s.equals("bye")){
                break;
            }
            //发送数据
            OutputStream os = accept.getOutputStream();
            String s1 = scanner.next();
            byte[] bytes1 = s1.getBytes();
            os.write(bytes1);
            if (s1.equals("bye")){
                break;
            }
        }
        serverSocket.close();
    }
}
